import Instance from '@/utils/http.ts';
import {RouteParamValue} from "vue-router";

const EQ_BASE=`/equipment/`;

// 分页获取所有设备
export function useGetAllEquipmentAPI(current:number,pageSize:number){
    return Instance({
        url:EQ_BASE+`getAllByPage`,
        method:'GET',
        params: {current: current, pageSize: pageSize}
    })
}

// 配合分页获取所有设备这个接口，获取所有设备的条数
export function useGetAllCountAPI(){
    return Instance({       
        url:EQ_BASE+`getAllCounts`,
        method:'GET'
    })
}

// detail中的一个功能，打包下载附件，并做成一个压缩包
export function useDownPhotosAPI(fileList:[]){
    return Instance({       
        url:EQ_BASE+`downLoadFiles`,
        method:'POST',
        data:fileList,
        responseType:'blob',
    })
}


// 通过typeName分页获取数据
export function useGetByTypeAPI(typeName: string, orderBy: Number, current: number, pageSize:number) {
    return Instance({           
            url: EQ_BASE+`getByTypeName`,
            method: 'GET',
            params: {typeName, orderBy,current,pageSize}
        }
    )
}
// export function useGetByEquipmentNameAPI(equipmentName: string,current: number, pageSize:number) {
//     return Instance({
//             url: '/equipment/getByEquipmentName',
//             method: 'GET',
//             params: {equipmentName,current,pageSize}
//         }
//     )
// }


// 通过id删除一套数据
export function useDeleteOneByIdAPI(id:number) {
    return Instance({
            url:EQ_BASE+ `${id}`,
            method: 'DELETE',
        }
    )
}


// 修改一条数据
export function useModifyOneAPI(data:FormData) {
    return Instance({         
            url: EQ_BASE+`modifyOne`,
            method: 'PUT',
            headers: {
                'content-type': 'multipart/form-data'
            },
            data:data,
        }
    )
}
// export function useGetByEncodeAPI(encode:string) {
//     return Instance({
//             url: `/equipment/getByEncode`,
//             method: 'GET',
//             params:{encode:encode},
//         }
//     )
// }


// 新增加一条数据
export function useSaveOneEquipmentAPI(formDate:FormData) {
    return Instance({
            url:EQ_BASE+ `saveOne`,
            method: 'POST',
            headers:{
                'content-type': 'multipart/form-data'
            },
            data:formDate
        }
    )
}

// 使用多功能查询接口分页查询数据
export function useByMultifunctionAPI(name: string,current: number, pageSize:number) {
    return Instance({
            url:EQ_BASE+ `getByMultifunction`,
            method: 'GEt',
            params:{
                name,current,pageSize
            }
        }
    )
}


// 配合通过typeName获取数据接口，获取所有的数据行条数
export function useGetCountByTypeNameAPI(typeName: string) {
    return Instance({
            url:EQ_BASE+ `getCountByTypeName`,
            method: 'GEt',
            params:{
                typeName
            }
        }
    )
}

// 配合多功能查询接口获取所有的数据条数
export function useGetCountByMultifunctionNameAPI(name: string) {
    return Instance({
            url: EQ_BASE+`getCountByMultifunctionName`,
            method: 'GEt',
            params:{
                name
            }
        }
    )
}


// 修改设备的状态（报废、变卖）---要配合数据库
export function useModifyStatusAPI(formData:FormData) {
    return Instance({
            url: EQ_BASE+`modifyEquipmentStatus`,
            method: 'PUT',
            headers: {
                'content-type': 'multipart/form-data'
            },
            data:formData
        }
    )
}

// 通过id 获取一条设备的信息
export function useGetOneByIdAPI(id: string | RouteParamValue[]) {
    return Instance({
            url:EQ_BASE+ `${id}`,
            method: 'GET',
        }
    )
}